import { createRouter, createWebHistory } from 'vue-router'

const router = createRouter({
  history: createWebHistory(import.meta.env.BASE_URL),
  routes: [
    {
      path: '/',
      redirect: '/home',
      children: [
        {
          path: 'home',
          name: 'home',
          component: () => import('../views/home/index.vue'),
          meta: { title: '首页' }
        },
        // 线索管理
        {
          path: 'clue/list',
          name: 'clueList',
          component: () => import('../views/clue/list.vue'),
          meta: { title: '线索列表' }
        },
        {
          path: 'clue/pool',
          name: 'cluePool',
          component: () => import('../views/clue/pool.vue'),
          meta: { title: '线索池' }
        },
        // 商机管理
        {
          path: 'business/list',
          name: 'businessList',
          component: () => import('../views/business/list.vue'),
          meta: { title: '商机列表' }
        },
        {
          path: 'business/public',
          name: 'businessPublic',
          component: () => import('../views/business/pool.vue'),
          meta: { title: '公海池' }
        },
        // 客户管理
        {
          path: 'customer',
          name: 'customer',
          component: () => import('../views/customer/index.vue'),
          meta: { title: '客户管理' }
        },
        // 资源管理
        {
          path: 'resource/course',
          name: 'course',
          component: () => import('../views/resource/course.vue'),
          meta: { title: '课程管理' }
        },
        {
          path: 'resource/activity',
          name: 'activity',
          component: () => import('../views/resource/activity.vue'),
          meta: { title: '活动管理' }
        },
        // 系统管理
        {
          path: 'system/department',
          name: 'department',
          component: () => import('../views/system/dept.vue'),
          meta: { title: '部门管理' }
        },
        {
          path: 'system/role',
          name: 'role',
          component: () => import('../views/system/role.vue'),
          meta: { title: '角色管理' }
        },
        {
          path: 'system/user',
          name: 'user',
          component: () => import('../views/system/user.vue'),
          meta: { title: '用户管理' }
        },
        {
          path: 'system/log',
          name: 'log',
          component: () => import('../views/system/log.vue'),
          meta: { title: '系统日志' }
        }
      ]
    },
    // 登录页面
    {
      path: '/login',
      name: 'login',
      component: () => import('../views/login/index.vue'),
      meta: { title: '登录' }
    }
  ],
  scrollBehavior(to, from, savedPosition) {
    if (savedPosition) {
      return savedPosition
    } else {
      return { top: 0 }
    }
  }
})

// 全局前置守卫，设置页面标题
router.beforeEach((to, from, next) => {
  // 设置页面标题
  document.title = to.meta.title ? `${to.meta.title} - 轻客管家` : '轻客管家'
  next()
})

export default router
